The communication of data over networks has become an important, if not essential, way for many organizations and individuals to communicate. The Internet is a global network connecting millions of computers in which any computer connected to the Internet can potentially receive data from and send data to any other computer connected to the Internet. The Internet provides a variety of methods in which to communicate data, one of the most ubiquitous of which is the World Wide Web. Other methods for communicating data over the Internet include e-mail, usenet newsgroups, telnet, FTP, audio streams, and video streams.
Users typically access the Internet either through a computer connected to an Internet Service Provider (“ISP”) or computer connected to a local area network (“LAN”) provided by an organization, which is in turn, connected to the ISP. The ISP provides a point of presence to interface with the Internet backbone. Routers and switches in the backbone direct data traffic between the various ISPs.
To access a LAN and, in turn, the Internet, many organizations use a network access gateway to act as a consolidation point for traffic entering or leaving the LAN.
In this network topology, all of the clients using the same network access gateway share a common “backhaul” network connection to the ISP. Any network traffic traveling between a client computer on the LAN and the Internet must therefore pass through (i.e. be “routed” by) the network access gateway.
One common use of a network access gateway is to provide “NAT” (Network Address Translation) services to clients on the LAN. This function allows a single outward-facing IP address to be reused for some purposes by multiple clients inside the LAN. This feature is sometimes referred to as “IP masquerading”.
The routing nature and IP masquerading nature of network access gateways often prevent an upstream ISP from sufficiently observing the traffic on the LAN side of the gateway. Particularly when NAT is enabled, the ISP is often unable to correlate traffic on the backhaul to particular clients behind the gateway.
Computers sometimes fall victim to malicious software (“malware”) such as worms and viruses, which exploit vulnerabilities in the victim to gain control.
Once malware has infected a victim computer, a typical behavior is to attempt self-propagation. To propagate, the malware must find and infect other vulnerable computers. The search for additional victims is often conducted at a high rate of speed by means of network reconnaissance. The speed and intensity of the reconnaissance is often bound only by the available processor and network bandwidth resources.
Some types of malware are constructed so as to bombard a third-party victim with excessive network traffic. This case is sometimes referred to as a DoS (Denial of Service) attack. It may be referred to as a DDoS (Distributed Denial of Service) attack when there are many coordinated attackers.
Some types of malware do not produce persistent high volumes of network traffic. Clients infected with this type of malware are still at high risk because security measures have failed. These clients may also pose an additional threat to other LAN clients at any future time.
Yet another potential source of hostile network traffic is a user who intentionally operates a computer program that is designed to produce such traffic.
Whenever a LAN client or a number of LAN clients are subjected to traffic of sufficient volume and type, the LAN and/or the backhaul can become congested with the excessive traffic. This network congestion is a problem even for otherwise uninvolved LAN clients because of the reduction in the effective bandwidth of the shared backhaul. The congestion is a problem for the ISP because of bandwidth limitations and because of the costs associated with providing remediation and customer support. Furthermore, other computers both inside and outside of the LAN may become burdened by receiving excessive traffic.
Because of the inability of the ISP to observe or attribute LAN traffic behind a gateway to specific clients, it is difficult or impossible for the ISP to remotely assign responsibility or take corrective action against the infected clients or perpetrators.
One prior art method of finding the sources of network offenses is to take remote control of the gateway from upstream and to begin examining all of the LAN traffic manually. However, this scheme requires manual action, proper network observation tools on the gateway, and sufficient skill on the part of the analyst. This approach is also predicated on having enough remaining network capacity on the backhaul and enough remaining processing power on the gateway in order to successfully conduct the examination.
Another prior art method of finding the sources of network offenses is to physically or logically disconnect and reconnect clients while monitoring the network traffic on the gateway. However, this approach will disrupt the connectivity of innocent/uninfected clients. Further, it imposes requirements upon the LAN network architecture and typically requires human intervention throughout a potentially lengthy process.